<?php 
class GruposController extends AppController{
    
    public $layout = 'kennel';
    public $name = 'Grupos';
    public $helpers=array('Html','Form');
    public $components=array('Session');
    public $uses = array('Raza', 'Grupo', 'GruposRaza');
   
   
    function index(){
	    
	    $grupos=$this->Grupo->find('all');
	    
	    $this->set(compact('grupos'));
	    
    }
    function insertar($id = null){
        if(!empty($this->data)){
            $this->Grupo->create();
            
            if($this->Grupo->save($this->data)){
                $this->Session->setFlash("Grupo".$this->Grupo->id." guardado");
                $this->redirect(array('action'=>'index'), null, true);
            }else{
                $this->Session->setFlash("No se pudo guardar");
                $this->redirect(array('action'=>'index'), null, true);
            }
        }
    }
    function editar($id=null){
        $this->Grupo->id = $id;
                if (!$id) {
                    $this->Session->setFlash('No existe tal registro');
                    $this->redirect(array('action' => 'index'), null, true);
                }
                if (empty($this->data)) {
                    $this->data = $this->Grupo->read(); 
                    
                } else {
                    if ($this->Grupo->save($this->data)) {
                        $this->Session->setFlash('Los datos fueron modificados');
                        $this->redirect(array('action' => 'index'), null, true);
                    } else {
                        $this->Session->setFlash('no se pudo modificar!!');
                    }
                }
    }
     public function eliminar($id = null){
        if (!$id) {
            $this->Session->setFlash('id Invalida para borrar');
            $this->redirect(array('action' => 'index'));
        }
        if ($this->Grupo->delete($id)) {
           $this->Session->setFlash('El Grupo ' . $id . ' fue borrado');
           $this->redirect(array('action' => 'index'));
        }

    }
    function anaderazas($id=null){
        $this->layout = 'sheepit';
         $grupos=$this->Grupo->find('first', array(
         'conditions'=>array('Grupo.id'=>$id),
         'recursive'=>-1
         ));
        
         $grupo = $grupos['Grupo']['nombre'];
        if (!empty($this->data)) {
            $this->GruposRaza->create();
           
            if ($this->GruposRaza->saveMany($this->data)) {
                //debug($this->data);exit;
                $this->Session->setFlash('Registro de raza en grupo ' . $id . ' exitosamente');
                $this->redirect(array('action' => 'editaraza', $id, $grupo), null, true);
            } else {
                $this->Session->setFlash('no se pudo registrar las razas del grupo!!' . $id);
            }
        }
        $razasid = $this->GruposRaza->find('list', array(
                'fields'=>array('GruposRaza.raza_id')
                ));
                
        $razas = $this->Raza->find('list', array(
        'fields' => array('Raza.id','Raza.nombre'),
        'conditions'=>array('NOT'=>array('Raza.id'=>$razasid))
        ));
        $this->set(compact('razas', 'id'));
    }
    function editaraza($id = null, $grupo=null)
    {
        $gruporazas = $this->GruposRaza->find('all', array('conditions' => array('GruposRaza.grupo_id' =>
                    $id)));
        $razas = $this->Raza->find('list', array('fields' => array('Raza.id',
                    'Raza.nombre')));
        //debug($razascria);exit;
        $this->set(compact('razas', 'gruporazas', 'id', 'grupo'));
    }
    function editraza($id = null, $idgrupo=null)
    {
        if (!empty($this->data)) {
            $grupos=$this->Grupo->find('first', array(
         'conditions'=>array('Grupo.id'=>$idgrupo),
         'recursive'=>-1
         ));
         $grupo = $grupos['Grupo']['nombre'];
            //debug($this->data);exit;
            $this->request->data['GruposRaza']['id'] = $id;
            if ($this->GruposRaza->saveMany($this->data)) {
                $this->Session->setFlash("Registro actualizados");
                $this->redirect(array('action' => 'editaraza', $idgrupo, $grupo), null, true);
            } else {
                $this->Session->setFlash("No se pudo actualizar");
                $this->redirect(array('action' => 'editaraza', $idgrupo, $grupo), null, true);
            }
        }
        $razacria = $this->GruposRaza->find('first', array('conditions' => array('GruposRaza.id' =>
                    $id)));
        $razas = $this->Raza->find('list', array('fields' => array('Raza.id',
                    'Raza.nombre')));
        //debug($razacria);exit;
        $this->set(compact('razas', 'razacria'));
    }
    function eliminaraza($id = null, $idgrupo=null)
    {
        if (!$id) {
            $this->Session->setFlash('id Invalida para eliminar');
            $this->redirect(array('action' => 'editaraza', $idgrupo, $grupo), null, true);
        }
        if ($this->GruposRaza->delete($id)) {
           $grupos=$this->Grupo->find('first', array(
         'conditions'=>array('Grupo.id'=>$idgrupo),
         'recursive'=>-1
         ));
         $grupo = $grupos['Grupo']['nombre'];
         
            $this->Session->setFlash('La Raza fue borrada');
            $this->redirect(array('action' => 'editaraza', $idgrupo, $grupo), null, true);
        }
    }
}
?>